home *** CD-ROM | disk | FTP | other *** search
/ Cre@te Online 2000 December / Cre@teOnline CD05.iso / MacSoft / XML ConsoleMax.sea / XML ConsoleMax / Required / esc.jar / com / extensibility / xa / ModuleRegistry.class (.txt) < prev    next >
Encoding:
Java Class File  |  2000-06-30  |  3.1 KB  |  136 lines

  1. package com.extensibility.xa;
  2.  
  3. import com.extensibility.app.DocumentPreferences;
  4. import com.extensibility.xml.AuditTrail;
  5. import com.extensibility.xml.URI;
  6. import java.util.Enumeration;
  7. import java.util.Vector;
  8.  
  9. class ModuleRegistry {
  10.    Vector reg = new Vector();
  11.  
  12.    void setEditable(URI var1) {
  13.       this.setEditable(var1, !var1.isReadOnly());
  14.    }
  15.  
  16.    void setup(URI var1, Enumeration var2) {
  17.       this.createEntry(var1).auditTrail.setup(var2);
  18.    }
  19.  
  20.    DocumentPreferences getPreferences(URI var1) {
  21.       return this.createEntry(var1).prefs;
  22.    }
  23.  
  24.    void setPreferences(URI var1, DocumentPreferences var2) {
  25.       this.createEntry(var1).prefs = var2;
  26.    }
  27.  
  28.    ModuleRegistryEntry addModule(URI var1) {
  29.       ModuleRegistryEntry var2 = new ModuleRegistryEntry(var1, false, false);
  30.       this.reg.addElement(var2);
  31.       return var2;
  32.    }
  33.  
  34.    private void removeModule(ModuleRegistryEntry var1) {
  35.       this.reg.removeElement(var1);
  36.    }
  37.  
  38.    void updateURI(URI var1, URI var2) {
  39.       if (!var2.equals(var1)) {
  40.          ModuleRegistryEntry var3 = this.getEntry(var2);
  41.          ModuleRegistryEntry var4 = this.getEntry(var1);
  42.          if (var4 != null) {
  43.             var4.uri = var2;
  44.             if (var3 != null) {
  45.             }
  46.          } else if (var3 == null) {
  47.             this.createEntry(var2);
  48.          }
  49.  
  50.       }
  51.    }
  52.  
  53.    void setEditable(URI var1, boolean var2) {
  54.       this.createEntry(var1).isEditable = var2;
  55.    }
  56.  
  57.    boolean isEditable(URI var1) {
  58.       return this.createEntry(var1).isEditable;
  59.    }
  60.  
  61.    void touch(URI var1) {
  62.       this.createEntry(var1).isTouched = true;
  63.    }
  64.  
  65.    void setTouched(URI var1, boolean var2) {
  66.       this.createEntry(var1).isTouched = var2;
  67.    }
  68.  
  69.    boolean isTouched(URI var1) {
  70.       return this.createEntry(var1).isTouched;
  71.    }
  72.  
  73.    boolean isTouched() {
  74.       Enumeration var1 = this.reg.elements();
  75.  
  76.       while(var1.hasMoreElements()) {
  77.          URI var2 = ((ModuleRegistryEntry)var1.nextElement()).uri;
  78.          if (this.isTouched(var2)) {
  79.             return true;
  80.          }
  81.       }
  82.  
  83.       return false;
  84.    }
  85.  
  86.    Vector getAllURIs() {
  87.       Vector var1 = new Vector();
  88.       Enumeration var2 = this.reg.elements();
  89.  
  90.       while(var2.hasMoreElements()) {
  91.          URI var3 = ((ModuleRegistryEntry)var2.nextElement()).uri;
  92.          var1.addElement(var3);
  93.       }
  94.  
  95.       return var1;
  96.    }
  97.  
  98.    Vector getTouchedURIs() {
  99.       Vector var1 = new Vector();
  100.       Enumeration var2 = this.reg.elements();
  101.  
  102.       while(var2.hasMoreElements()) {
  103.          URI var3 = ((ModuleRegistryEntry)var2.nextElement()).uri;
  104.          if (this.isTouched(var3)) {
  105.             var1.addElement(var3);
  106.          }
  107.       }
  108.  
  109.       return var1;
  110.    }
  111.  
  112.    AuditTrail getAuditTrail(URI var1) {
  113.       return var1 == null ? null : this.createEntry(var1).auditTrail;
  114.    }
  115.  
  116.    private ModuleRegistryEntry getEntry(URI var1) {
  117.       for(int var3 = 0; var3 < this.reg.size(); ++var3) {
  118.          ModuleRegistryEntry var2 = (ModuleRegistryEntry)this.reg.elementAt(var3);
  119.          if (var2.uri.equals(var1)) {
  120.             return var2;
  121.          }
  122.       }
  123.  
  124.       return null;
  125.    }
  126.  
  127.    private ModuleRegistryEntry createEntry(URI var1) {
  128.       ModuleRegistryEntry var2 = this.getEntry(var1);
  129.       if (var2 == null) {
  130.          var2 = this.addModule(var1);
  131.       }
  132.  
  133.       return var2;
  134.    }
  135. }
  136.